home *** CD-ROM | disk | FTP | other *** search
/ Deutsche Edition 1 / Deutsche Edition 1.iso / amok / 081-090 / amok81 / m2 / talkdemo / txt / requester.def < prev    next >
Text File  |  1993-11-04  |  1KB  |  58 lines

  1. DEFINITION MODULE Requester;
  2. (*$ LargeVars:=FALSE *)
  3.  
  4. (* Nur ab Version 36 benutzen, Abfrage bei Programmbeginn!! *)
  5.  
  6. FROM SYSTEM IMPORT ADDRESS;
  7. IMPORT IntuitionD, R;
  8.  
  9.  
  10. CONST
  11.   (* Rückgabewerte von YNCRequest: *)
  12.   yes=1;
  13.   no=2;
  14.   cancel=0;
  15.  
  16. (*
  17.  *  Setzt myProcess^.windowPtr auf win.
  18.  *  Damit landen nun ALLE Requester auf dem zugehörigen Screen
  19.  *  NIL bedeutet Workbench (oder Default Public Screen).
  20.  *  -1 bedeutet, daß alle Requester unterdrückt werden und
  21.  *  FALSE bzw. CANCEL zurückliefern.
  22.  *  Dies gilt auch für System-Requester!
  23.  *  Jeder, der Requster-Module schreibt, sollt esich an diese
  24.  *  Konventionen halten!!
  25.  *)
  26. PROCEDURE SetWindow(win{R.A0}:IntuitionD.WindowPtr);
  27.  
  28. (*
  29.  * Stellt Window-Zustand bei Programmstart wieder her.
  30.  * Ist auch CLOSE-Procedure.
  31.  *)
  32. PROCEDURE RestoreWindow;
  33.  
  34. (* Der Titel des Requesters ist jeweils der Arts.programName! *)
  35.  
  36.  
  37. (* Allgemeiner, vielseitiger Requester *)
  38. (* Result = gadgets von links=1, 2, 3 usw. ganz rechts =0 *)
  39. PROCEDURE Request(
  40.     text:ARRAY OF CHAR;    (* Zeilen durch "\n" getrennt *)
  41.     gadgets:ARRAY OF CHAR; (* Gadgets durch "|" getrennt *)
  42.     args:ADDRESS   (* args für text und gadgets %d %lx %s etc *)
  43.     ):INTEGER;
  44.  
  45. (* Das meistgebrauchte:
  46.  * Bringt YES=1 NO=2 CANCEL=0
  47.  *)
  48. PROCEDURE YNCRequest(frage:ARRAY OF CHAR (* kann mehrere Zeilen enthalten! *)
  49.         ):INTEGER;
  50.  
  51. (*
  52.  *  Zur einfachen Anzeige von Meldungen.
  53.  *  Bringt nur ein Gadget: OK
  54.  *)
  55. PROCEDURE OKRequest(msg:ARRAY OF CHAR); (* s.o *)
  56.  
  57. END Requester.
  58.